package com.jhgk.jhcee.auth.model;

import java.util.ArrayList;
import java.util.List;

public class PolicycoreExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public PolicycoreExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andPolicyCoreIdIsNull() {
            addCriterion("policy_core_id is null");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdIsNotNull() {
            addCriterion("policy_core_id is not null");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdEqualTo(Integer value) {
            addCriterion("policy_core_id =", value, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdNotEqualTo(Integer value) {
            addCriterion("policy_core_id <>", value, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdGreaterThan(Integer value) {
            addCriterion("policy_core_id >", value, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("policy_core_id >=", value, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdLessThan(Integer value) {
            addCriterion("policy_core_id <", value, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdLessThanOrEqualTo(Integer value) {
            addCriterion("policy_core_id <=", value, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdIn(List<Integer> values) {
            addCriterion("policy_core_id in", values, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdNotIn(List<Integer> values) {
            addCriterion("policy_core_id not in", values, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdBetween(Integer value1, Integer value2) {
            addCriterion("policy_core_id between", value1, value2, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andPolicyCoreIdNotBetween(Integer value1, Integer value2) {
            addCriterion("policy_core_id not between", value1, value2, "policyCoreId");
            return (Criteria) this;
        }

        public Criteria andExamTypeIsNull() {
            addCriterion("exam_type is null");
            return (Criteria) this;
        }

        public Criteria andExamTypeIsNotNull() {
            addCriterion("exam_type is not null");
            return (Criteria) this;
        }

        public Criteria andExamTypeEqualTo(String value) {
            addCriterion("exam_type =", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeNotEqualTo(String value) {
            addCriterion("exam_type <>", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeGreaterThan(String value) {
            addCriterion("exam_type >", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeGreaterThanOrEqualTo(String value) {
            addCriterion("exam_type >=", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeLessThan(String value) {
            addCriterion("exam_type <", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeLessThanOrEqualTo(String value) {
            addCriterion("exam_type <=", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeLike(String value) {
            addCriterion("exam_type like", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeNotLike(String value) {
            addCriterion("exam_type not like", value, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeIn(List<String> values) {
            addCriterion("exam_type in", values, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeNotIn(List<String> values) {
            addCriterion("exam_type not in", values, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeBetween(String value1, String value2) {
            addCriterion("exam_type between", value1, value2, "examType");
            return (Criteria) this;
        }

        public Criteria andExamTypeNotBetween(String value1, String value2) {
            addCriterion("exam_type not between", value1, value2, "examType");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidIsNull() {
            addCriterion("school_uuid is null");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidIsNotNull() {
            addCriterion("school_uuid is not null");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidEqualTo(String value) {
            addCriterion("school_uuid =", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidNotEqualTo(String value) {
            addCriterion("school_uuid <>", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidGreaterThan(String value) {
            addCriterion("school_uuid >", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidGreaterThanOrEqualTo(String value) {
            addCriterion("school_uuid >=", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidLessThan(String value) {
            addCriterion("school_uuid <", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidLessThanOrEqualTo(String value) {
            addCriterion("school_uuid <=", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidLike(String value) {
            addCriterion("school_uuid like", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidNotLike(String value) {
            addCriterion("school_uuid not like", value, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidIn(List<String> values) {
            addCriterion("school_uuid in", values, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidNotIn(List<String> values) {
            addCriterion("school_uuid not in", values, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidBetween(String value1, String value2) {
            addCriterion("school_uuid between", value1, value2, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolUuidNotBetween(String value1, String value2) {
            addCriterion("school_uuid not between", value1, value2, "schoolUuid");
            return (Criteria) this;
        }

        public Criteria andSchoolNameIsNull() {
            addCriterion("school_name is null");
            return (Criteria) this;
        }

        public Criteria andSchoolNameIsNotNull() {
            addCriterion("school_name is not null");
            return (Criteria) this;
        }

        public Criteria andSchoolNameEqualTo(String value) {
            addCriterion("school_name =", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameNotEqualTo(String value) {
            addCriterion("school_name <>", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameGreaterThan(String value) {
            addCriterion("school_name >", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameGreaterThanOrEqualTo(String value) {
            addCriterion("school_name >=", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameLessThan(String value) {
            addCriterion("school_name <", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameLessThanOrEqualTo(String value) {
            addCriterion("school_name <=", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameLike(String value) {
            addCriterion("school_name like", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameNotLike(String value) {
            addCriterion("school_name not like", value, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameIn(List<String> values) {
            addCriterion("school_name in", values, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameNotIn(List<String> values) {
            addCriterion("school_name not in", values, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameBetween(String value1, String value2) {
            addCriterion("school_name between", value1, value2, "schoolName");
            return (Criteria) this;
        }

        public Criteria andSchoolNameNotBetween(String value1, String value2) {
            addCriterion("school_name not between", value1, value2, "schoolName");
            return (Criteria) this;
        }

        public Criteria andExamYearIsNull() {
            addCriterion("exam_year is null");
            return (Criteria) this;
        }

        public Criteria andExamYearIsNotNull() {
            addCriterion("exam_year is not null");
            return (Criteria) this;
        }

        public Criteria andExamYearEqualTo(Integer value) {
            addCriterion("exam_year =", value, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearNotEqualTo(Integer value) {
            addCriterion("exam_year <>", value, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearGreaterThan(Integer value) {
            addCriterion("exam_year >", value, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearGreaterThanOrEqualTo(Integer value) {
            addCriterion("exam_year >=", value, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearLessThan(Integer value) {
            addCriterion("exam_year <", value, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearLessThanOrEqualTo(Integer value) {
            addCriterion("exam_year <=", value, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearIn(List<Integer> values) {
            addCriterion("exam_year in", values, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearNotIn(List<Integer> values) {
            addCriterion("exam_year not in", values, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearBetween(Integer value1, Integer value2) {
            addCriterion("exam_year between", value1, value2, "examYear");
            return (Criteria) this;
        }

        public Criteria andExamYearNotBetween(Integer value1, Integer value2) {
            addCriterion("exam_year not between", value1, value2, "examYear");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameIsNull() {
            addCriterion("school_province_name is null");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameIsNotNull() {
            addCriterion("school_province_name is not null");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameEqualTo(String value) {
            addCriterion("school_province_name =", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameNotEqualTo(String value) {
            addCriterion("school_province_name <>", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameGreaterThan(String value) {
            addCriterion("school_province_name >", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameGreaterThanOrEqualTo(String value) {
            addCriterion("school_province_name >=", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameLessThan(String value) {
            addCriterion("school_province_name <", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameLessThanOrEqualTo(String value) {
            addCriterion("school_province_name <=", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameLike(String value) {
            addCriterion("school_province_name like", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameNotLike(String value) {
            addCriterion("school_province_name not like", value, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameIn(List<String> values) {
            addCriterion("school_province_name in", values, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameNotIn(List<String> values) {
            addCriterion("school_province_name not in", values, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameBetween(String value1, String value2) {
            addCriterion("school_province_name between", value1, value2, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolProvinceNameNotBetween(String value1, String value2) {
            addCriterion("school_province_name not between", value1, value2, "schoolProvinceName");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelIsNull() {
            addCriterion("school_level is null");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelIsNotNull() {
            addCriterion("school_level is not null");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelEqualTo(String value) {
            addCriterion("school_level =", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelNotEqualTo(String value) {
            addCriterion("school_level <>", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelGreaterThan(String value) {
            addCriterion("school_level >", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelGreaterThanOrEqualTo(String value) {
            addCriterion("school_level >=", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelLessThan(String value) {
            addCriterion("school_level <", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelLessThanOrEqualTo(String value) {
            addCriterion("school_level <=", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelLike(String value) {
            addCriterion("school_level like", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelNotLike(String value) {
            addCriterion("school_level not like", value, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelIn(List<String> values) {
            addCriterion("school_level in", values, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelNotIn(List<String> values) {
            addCriterion("school_level not in", values, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelBetween(String value1, String value2) {
            addCriterion("school_level between", value1, value2, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSchoolLevelNotBetween(String value1, String value2) {
            addCriterion("school_level not between", value1, value2, "schoolLevel");
            return (Criteria) this;
        }

        public Criteria andSelectScaleIsNull() {
            addCriterion("select_scale is null");
            return (Criteria) this;
        }

        public Criteria andSelectScaleIsNotNull() {
            addCriterion("select_scale is not null");
            return (Criteria) this;
        }

        public Criteria andSelectScaleEqualTo(String value) {
            addCriterion("select_scale =", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleNotEqualTo(String value) {
            addCriterion("select_scale <>", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleGreaterThan(String value) {
            addCriterion("select_scale >", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleGreaterThanOrEqualTo(String value) {
            addCriterion("select_scale >=", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleLessThan(String value) {
            addCriterion("select_scale <", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleLessThanOrEqualTo(String value) {
            addCriterion("select_scale <=", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleLike(String value) {
            addCriterion("select_scale like", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleNotLike(String value) {
            addCriterion("select_scale not like", value, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleIn(List<String> values) {
            addCriterion("select_scale in", values, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleNotIn(List<String> values) {
            addCriterion("select_scale not in", values, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleBetween(String value1, String value2) {
            addCriterion("select_scale between", value1, value2, "selectScale");
            return (Criteria) this;
        }

        public Criteria andSelectScaleNotBetween(String value1, String value2) {
            addCriterion("select_scale not between", value1, value2, "selectScale");
            return (Criteria) this;
        }

        public Criteria andLostCostIsNull() {
            addCriterion("lost_cost is null");
            return (Criteria) this;
        }

        public Criteria andLostCostIsNotNull() {
            addCriterion("lost_cost is not null");
            return (Criteria) this;
        }

        public Criteria andLostCostEqualTo(String value) {
            addCriterion("lost_cost =", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostNotEqualTo(String value) {
            addCriterion("lost_cost <>", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostGreaterThan(String value) {
            addCriterion("lost_cost >", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostGreaterThanOrEqualTo(String value) {
            addCriterion("lost_cost >=", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostLessThan(String value) {
            addCriterion("lost_cost <", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostLessThanOrEqualTo(String value) {
            addCriterion("lost_cost <=", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostLike(String value) {
            addCriterion("lost_cost like", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostNotLike(String value) {
            addCriterion("lost_cost not like", value, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostIn(List<String> values) {
            addCriterion("lost_cost in", values, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostNotIn(List<String> values) {
            addCriterion("lost_cost not in", values, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostBetween(String value1, String value2) {
            addCriterion("lost_cost between", value1, value2, "lostCost");
            return (Criteria) this;
        }

        public Criteria andLostCostNotBetween(String value1, String value2) {
            addCriterion("lost_cost not between", value1, value2, "lostCost");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationIsNull() {
            addCriterion("accept_qualification is null");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationIsNotNull() {
            addCriterion("accept_qualification is not null");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationEqualTo(String value) {
            addCriterion("accept_qualification =", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationNotEqualTo(String value) {
            addCriterion("accept_qualification <>", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationGreaterThan(String value) {
            addCriterion("accept_qualification >", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationGreaterThanOrEqualTo(String value) {
            addCriterion("accept_qualification >=", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationLessThan(String value) {
            addCriterion("accept_qualification <", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationLessThanOrEqualTo(String value) {
            addCriterion("accept_qualification <=", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationLike(String value) {
            addCriterion("accept_qualification like", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationNotLike(String value) {
            addCriterion("accept_qualification not like", value, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationIn(List<String> values) {
            addCriterion("accept_qualification in", values, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationNotIn(List<String> values) {
            addCriterion("accept_qualification not in", values, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationBetween(String value1, String value2) {
            addCriterion("accept_qualification between", value1, value2, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andAcceptQualificationNotBetween(String value1, String value2) {
            addCriterion("accept_qualification not between", value1, value2, "acceptQualification");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesIsNull() {
            addCriterion("refuse_archives is null");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesIsNotNull() {
            addCriterion("refuse_archives is not null");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesEqualTo(String value) {
            addCriterion("refuse_archives =", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesNotEqualTo(String value) {
            addCriterion("refuse_archives <>", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesGreaterThan(String value) {
            addCriterion("refuse_archives >", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesGreaterThanOrEqualTo(String value) {
            addCriterion("refuse_archives >=", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesLessThan(String value) {
            addCriterion("refuse_archives <", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesLessThanOrEqualTo(String value) {
            addCriterion("refuse_archives <=", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesLike(String value) {
            addCriterion("refuse_archives like", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesNotLike(String value) {
            addCriterion("refuse_archives not like", value, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesIn(List<String> values) {
            addCriterion("refuse_archives in", values, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesNotIn(List<String> values) {
            addCriterion("refuse_archives not in", values, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesBetween(String value1, String value2) {
            addCriterion("refuse_archives between", value1, value2, "refuseArchives");
            return (Criteria) this;
        }

        public Criteria andRefuseArchivesNotBetween(String value1, String value2) {
            addCriterion("refuse_archives not between", value1, value2, "refuseArchives");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}